More Related Content Similar to 20210610 AgileDevOps West Conf Bringing DevOps to an Entrenched Legacy Environment with the Kanban Method Craeg Strong Ariel Partners (20) More from Craeg Strong (20) 20210610 AgileDevOps West Conf Bringing DevOps to an Entrenched Legacy Environment with the Kanban Method Craeg Strong Ariel Partners1. BRINGING DEVOPS TO AN
ENTRENCHED LEGACY
ENVIRONMENT WITH KANBAN
Craeg Strong, CTO
Ariel Partners
June 10, 2021
3:15pm-4:15pm EDT
Virtual
© Copyright Ariel Partners 2021
Confidential
2. § Software Development since 1988
§ Large Commercial & Government Projects
§ Kanban Coach / DevOps Engineer
§ Kanban Trainer / SpecFlow Trainer
§ Performance & Scalability Architect
§ Certified Ethical Hacker
§ New York & Washington DC Area
CTO, Ariel Partners
AKT, KCP, KMP, CSM, CSP, CSPO,
ITILv3, PMI-ACP, PMP, CLP, SPC
ICP-ACC, ICP-ATF, PSM-II, PSK
www.arielpartners.com
cstrong@arielpartners.com
@ckstrong1
CRAEG STRONG
2
Confidential © Copyright Ariel Partners 2021
3. J U N E 7–11, 2 0 21
S T R E A M I N G 9:45am–6:00pm E T
AGENDA
§ Define: DevOps
§ The Project
§ The Case For DevOps
§ Implementing DevOps For Legacy
§ Build Automation
§ Test Automation
§ Deployment Automation
§ Configuration As Code
§ Takeaways, QnA
3
Confidential © Copyright Ariel Partners 2021
5. DevOps (a clipped compound of
"development" and "operations") is a
culture, movement or practice that
emphasizes the collaboration and
communication of both software
developers and other information-
technology (IT) professionals while
automating the process of software
delivery and infrastructure changes.
DevOps - Wikipedia, the free encyclopedia
https://en.wikipedia.org/wiki/DevOps
WHAT IS DEVOPS?
Development
(SOFTWARE
ENGINEERING)
QA
(QUALITY
ASSURANCE)
Operations
DevOps
5
Confidential © Copyright Ariel Partners 2021
6. J U N E 7–11, 2 0 21
S T R E A M I N G 9:45a m –6 :0 0 pm E T
DEVOPS IN THE LARGE
§ Shared Templates & Frameworks
§ Standards are not Static, Evolve Based on Team
Feedback
§ Multiple Tool chains: Java, .NET, MEAN
TOOLS
§ Emphasis on Collaboration/Trust
§ Encourage New Ideas, Limit Downside via Fail-Fast
§ Blameless Post-Mortems
§ Servant Leadership
§ Efficiency vs Thoroughness Trade-off (ETTO Principle)
CULTURE
§ Cross Training
§ Emphasis on Continuous Learning
§ Transition To Management Not Required for Career
Advancement
§ Lightweight, Adaptable
§ Maximize Throughput, Not Utilization
§ Tight Feedback Loops
§ Continuous Service Improvement
PROCESS
ORGANIZATION
6
Confidential © Copyright Ariel Partners 2021
7. ASPECTS I WILL FOCUS ON
Build
Automation
Test
Automation
Deployment
Automation
Configuration
As Code
7
Confidential © Copyright Ariel Partners 2021
8. J U N E 7–11, 2 0 21
S T R E A M I N G 9:45am–6:00pm E T
THE PROJECT
8
Confidential © Copyright Ariel Partners 2021
9. J U N E 7–11, 2 0 21
S T R E A M I N G 9:45am–6:00pm E T
CRIMINAL JUSTICE PROGRAM
9
Confidential © Copyright Ariel Partners 2021
10. SYSTEM EVOLVED OVER MANY YEARS
1990
Pilot
DNA
Identification
Act
1994 1998
Client-Server: VB6
SQL
Server
2008 Today
C# VB.Net
Multi-Language
SOA Re-Architecture
VB6
2012
2002
10
Confidential © Copyright Ariel Partners 2021
2M+ Lines
of Code
RapidDNA Support
11. CHALLENGES INHERENT TO LEGACY ENVIRONMENTS
§ Mission-Critical
§ Heavily Regulated
§ Missing or Out of Date
§ Significant Documentation Requirements
§ Mostly Manual
§ System Not Designed For Testability
§ Resistant to Change
§ Battle Fatigue
§ Optimized For Non-Collaboration
§ May Inhibit Pair Programming
§ Heavyweight, Prescriptive
§ Manually-Intensive Reporting
§ Lengthy Approval Process
§ Skeptical of Open Source
System
Criticality
Documentation
Testing
Staff
Facility
Governance
Procurement
11
Confidential © Copyright Ariel Partners 2021
12. § Training, Documentation Assumes New (“Greenfield”) Project
§ Relatively Little Guidance Regarding Legacy (“Brownfield”)
Projects
§ How Can We Release To Production Every Two Weeks Given
A 6-Week Approval Cycle?
§ How Can We Adopt Two Week Sprints When Regression
Testing Consumes The Entire Team For Eight Weeks?
§ Can’t Fix Everything At Once
Agile Training &
Literature
Agile Practices
§ Automation Tools Poorly Supported By Older Platforms
§ Legacy Tends To Be Data-Heavy, Little Tool Support for Data
Validation
§ Business Logic Tends To Be In GUI and Data Layers,
Rendering Traditional Unit Testing Useless
Agile Toolset
§ 1
2
Confidential © Copyright Ariel Partners 2021
CHALLENGES IMPLEMENTING AGILE PRACTICES
IN A LEGACY ENVIRONMENT
13. WHY WOULD ANYONE SIGN UP FOR THIS
13
Confidential © Copyright Ariel Partners 2021
17. J U N E 7–11, 2 0 21
S T R E A M I N G 9:45am–6:00pm E T
THE CASE FOR DEVOPS
17
Confidential © Copyright Ariel Partners 2021
18. 1. Understand what makes the service “fit for
purpose”
2. Understand sources of dissatisfaction
regarding current delivery
3. Analyze sources of and nature of demand
4. Analyze current delivery capability
5. Model the service delivery workflow
6. Identify & define classes of service
7. Design the kanban system
8. Socialize design & negotiate implementation
18
Confidential © Copyright Ariel Partners 2021
SYSTEMS THINKING APPROACH TO IMPLEMENTING
KANBAN (STATIK)
19. Work Item Type Class Of Service
Business User Story Standard
Infrastructure User Story Standard
?
Tier III / Triage Expedited
New Forensic Lab Support Scripts Fixed Date
Hot Fix Expedited
Escaped Defect Expedited
Documentation Deliverable Fixed Date
Documentation Rework Expedited
Technical Chore Intangible
19
Confidential © Copyright Ariel Partners 2021
DEMAND ANALYSIS
20. When you receive the email it is very
important that you “Click to Accept”
that agreement—it is what gives us
permission to use your content and is
required for us to host your talk!
20
Confidential © Copyright Ariel Partners 2021
SCRUM TOOL SETUP
21. When you receive the email it is very
important that you “Click to Accept”
that agreement—it is what gives us
permission to use your content and is
required for us to host your talk!
0
5
10
15
20
25
1
2
/
2
2
/
1
4
1
2
/
2
3
/
1
4
1
2
/
2
4
/
1
4
1
2
/
2
5
/
1
4
1
2
/
2
6
/
1
4
1
2
/
2
7
/
1
4
1
2
/
2
8
/
1
4
1
2
/
2
9
/
1
4
1
2
/
3
0
/
1
4
1
2
/
3
1
/
1
4
1
/
1
/
1
5
1
/
2
/
1
5
1
/
3
/
1
5
1
/
4
/
1
5
1
/
5
/
1
5
1
/
6
/
1
5
1
/
7
/
1
5
1
/
8
/
1
5
1
/
9
/
1
5
1
/
1
0
/
1
5
1
/
1
1
/
1
5
1
/
1
2
/
1
5
1
/
1
3
/
1
5
1
/
1
4
/
1
5
1
/
1
5
/
1
5
1
/
1
6
/
1
5
Sprint 5: User Story Completion Curve
Testers
Waiting
For Code
Limited
Time For
Testing
21
Confidential © Copyright Ariel Partners 2021
SCRUM TOOL SETUP
22. Longer Sprint With
Bigger Batch-Size
Bottleneck
Lots of Blocked
Issues, Defects, and
Rejected Fixes
22
Confidential © Copyright Ariel Partners 2021
INITIAL WORKFLOW
23. § Developers Check-in In Code That Breaks the Build
§ High Concentration of Defects: Fixing One Issue Breaks
Two More
§ Automated Tests Too Difficult To Write
§ Deployment To Test Environments Lengthy and Error-Prone
§ Test Set-Up Lengthy and Error-Prone, Tear-Down Usually
Skipped
§ Many False Positive Defects Due To Configuration Issues
23
Confidential © Copyright Ariel Partners 2021
SOURCES OF DISSATISFACTION
26. Build Machine
TFS
TeamCity
Binary
Repository
Compile Code Run Tests Package Publish
Compile Code
Branch B
Run Tests
Branch B
Package Branch
B
Publish Branch
B
Compile Code
Branch C
Run Tests
Branch C
Package Branch
C
Publish Branch
C
26
Confidential © Copyright Ariel Partners 2021
TYPICAL BUILD AUTOMATION
27. Build Machine A
TFS
TeamCity
Binary
Repository
Compile Code
Run Unit Tests
Package Publish
Run SQL Tests
Drivers, Patches
Build Machine B
Compile Code
Branch B
Run Unit Tests
Branch B
Package Branch
B
Publish Branch
B
Run Unit Tests
Branch B
27
Confidential © Copyright Ariel Partners 2021
BUILD AUTOMATION FOR LEGACY SYSTEM
28. “Build Ready” Step
Has Been
Eliminated
But We Still Have
Significant Quality
Problems
28
Confidential © Copyright Ariel Partners 2021
UPDATED WORKFLOW
29. J U N E 7–11, 2 0 21
S T R E A M I N G 9:45am–6:00pm E T
TEST AUTOMATION
29
Confidential © Copyright Ariel Partners 2021
32. Build Machine A
TeamCity
Binary
Repository
Compile
Code
Run Unit
Tests
Package Publish
Run SQL
Tests
Drivers, Patches
Prepare
Test DB
Run Tests
Batch 1
Build Machine B
Prepare
Test DB
Run Tests
Batch 2
Build Machine C
Prepare
Test DB
Run Tests
Batch 3
Test DB Image
32
Confidential © Copyright Ariel Partners 2021
INCORPORATING TEST AUTOMATION INTO THE
DEVOPS PIPELINE
TFS
33. But It Still Takes
Too Long Before
We Can Test
Quality Is
Slowly Starting
To Improve
33
Confidential © Copyright Ariel Partners 2021
UPDATED WORKFLOW
34. J U N E 7–11, 2 0 21
S T R E A M I N G 9:45am–6:00pm E T
DEPLOYMENT AUTOMATION
34
Confidential © Copyright Ariel Partners 2021
37. But We Are Still
Getting False
Positive Defects
“Test Setup”
Step Has Been
Eliminated
“Deploy” Step
Has Been
Streamlined
37
Confidential © Copyright Ariel Partners 2021
UPDATED WORKFLOW
38. J U N E 7–11, 2 0 21
S T R E A M I N G 9:45am–6:00pm E T
CONFIGURATION AS CODE
38
Confidential © Copyright Ariel Partners 2021
39. Operating Platform: Configuration
Application: Code
Database
Matching Engine
Application Server
Graphical User Interface
39
Confidential © Copyright Ariel Partners 2021
DEPLOYMENTS HAVE TWO PIECES: APPLICATION CODE
AND OPERATING PLATFORM
41. No Step Where
1 OS Install
2 Set Hostname & IP Address
3 Set Time zone
4 Install Active Directory Services Production Only
5 Activate Windows
6 Create Messaging & Temp Folders
7 Configure File Share
8 Set Folder Permissions
9 Set Environment Variables
10 Disable Windows Firewall
11 Enable Remote Desktop Dev/Test Only
12 Configure Active Directory Groups
41
Confidential © Copyright Ariel Partners 2021
CONFIGURING THE OPERATING PLATFORM FOR A
LEGACY SYSTEM (1 OF 2)
42. No Step Where
13 Install 7-Zip Dev/Test Only
14 Install Octopus Tentacle Dev/Test Only
15 Configure Octopus Tentacle Dev/Test Only
16 Register New Tentacle With Octopus Server Dev/Test Only
17 Install SQL SMO and CLR Packages
18 Install MSMQ
19 Install .NET 3.5
20 Install SQL Server
21 Install IIS
22 Configure FTP/FTPS
23 Configure PKI Certificates
24 Install hMailServer Dev/Test Only,
Single Machine
42
Confidential © Copyright Ariel Partners 2021
CONFIGURING THE OPERATING PLATFORM FOR A
LEGACY SYSTEM (2 OF 2)
43. STEP ONE
100% Manual
300 Page Document
STEP THREE
The Configurator
STEP TWO
Partially Automated
Individual Scripts
43
Confidential © Copyright Ariel Partners 2021
EVOLUTION OF THE PROCESS
44. File Shares
Windows SXS
Files
Third Party
Installer Files
Test Environment
Nodes
Targeting
File
Configurator
Script
Configure
DevOps Engineer
44
Confidential © Copyright Ariel Partners 2021
ENTER: THE CONFIGURATOR
45. Greatly Reduced
Incidence of False
Positive Defects
Configuring New Environment Reduced
Weeks à Hours
Validating Existing Environment Reduced
Days à Minutes
45
Confidential © Copyright Ariel Partners 2021
UPDATED WORKFLOW
46. 1. What DevOps Practices Can Benefit My Project?
§ Build Automation
§ Test Automation
§ Deployment Automation
§ Configuration As Code
2. DevOps for Legacy
§ Challenging, Yet Transformative
3. Kanban System and STATIK
§ Lightweight and Effective Guides
46
Confidential © Copyright Ariel Partners 2021
KEY TAKEAWAYS
47. 47
Confidential © Copyright Ariel Partners 2021
THANK YOU!
Selected Training Offerings
§ Fundamentals of Agile
§ Agile for Leaders & Executives
§ Kanban Management Professional
§ Jira Fundamentals / Intermediate
§ Human Centered Design
§ BDD With Cucumber Acceptance
Testing
§ Agile Estimation, Forecasting, &
Metrics
§ Agile Requirements: Story Mapping,
Story Splitting & Discovery Kanban
§ SRE: Site Reliability Engineering
www.arielpartners.com
cstrong@arielpartners.com
Twitter: @arielpartners
Other Offerings
§ Digital Transformation
§ Cloud Native App Development
§ Agile / Kanban Coaching
§ DevOps Jumpstart
§ Compliance As Code
§ Test Automation Jumpstart
§ Legacy Modernization
§ JIRA Jumpstart